#ifndef _GAGE_H_
#define _GAGE_H_

#include <interfacelib/window/window.h>

namespace interfacelib
{
	namespace Window
	{
		class TimeGage : public interfacelib::Window::Window
		{
		public:
			TimeGage();
			virtual ~TimeGage();

			virtual bool create(const char *filename, int x, int y, DWORD attribute = MOVABLE | VISIBLE );
			void start( int elapTime , bool mode = true , bool direct = true );
			bool update();

		private:
			DWORD m_finishTime;
			DWORD m_startTime;
			int m_width;
			int m_height;
			bool m_mode;
			bool m_direct;
		};

		class StepGage : public interfacelib::Window::Window
		{
		public:
			StepGage ();
			virtual ~StepGage ();

			virtual bool create(const char *filename, int x, int y, DWORD attribute = MOVABLE | VISIBLE );
			void start( int total, int currentPos = 0 , bool mode = true , bool direct = true );
			bool update();

		private:
			int m_totalCount;
			int m_currentCount;
			int m_width;
			int m_height;
			bool m_mode;
			bool m_direct;
		};
	};
};

#endif